WinSoft JSON for iOS 1.2 No Source XE4 XE6
Read and modify existing json files:
var Json``: TJson``; with TJsonParser``.``Create do try Json := ParseUtf8File``(``TPath``.``GetDocumentsPath + PathDelim + 'data.json'``)``; try ShowMessage``(``Json``.``ToString``)``; finally FreeAndNil``(``Json``)``; end``; finally Free``; end``;
Create new json files:
var MyArray``: TJsonArray``; MyObject``: TJsonObject``; with TJsonObject``.``Create do try SetNull``(``'Null'``)``; SetTrue``(``'True'``)``; SetFalse``(``'False'``)``; SetNumber``(``'Number'``, 1.23``)``; SetString``(``'String'``, 'hello'``)``; SetDateTime``(``'DateTime'``, Now``)``; MyArray := SetArray``(``'Array'``, 3``)``; MyArray``.``SetString``(``0``, 'First item'``)``; MyArray``.``SetString``(``1``, 'Second item'``)``; MyArray``.``SetNumber``(``2``, 3.21``)``; MyObject := SetObject``(``'Object'``)``; MyObject``.``SetString``(``'First Member'``, 'Hello'``)``; MyObject``.``SetString``(``'Second Member'``, 'World'``)``; MyObject``.``SetFalse``(``'Third Member'``)``; MyObject``.``SetTrue``(``'Fourth Member'``)``; MyObject``.``SetNumber``(``'Other Member'``, 1.11``)``; ShowMessage``(``ToString``)``; ToUtf8File``(``TPath``.``GetDocumentsPath + PathDelim + 'new.json'``)``; finally Free``; end``;
Use fast, streaming TJsonWriter to create json file without in-memory overhead of TJson objects:
with TJsonWriter``.``Create``(``TPath``.``GetDocumentsPath + PathDelim + 'data.json'``) do try BeginObject``; WriteNull``(``'Null'``)``; Write``(``'True'``, True``)``; Write``(``'False'``, False``)``; Write``(``'Number'``, 1.23``)``; Write``(``'String'``, 'hello'``)``; Write``(``'DateTime'``, Now``, 0``)``; BeginArray``(``'Array'``)``; Write``(``'First item'``)``; Write``(``'Second item'``)``; Write``(``3.21``)``; EndArray``; BeginObject``(``'Object'``)``; Write``(``'First Member'``, 'Hello'``)``; Write``(``'Second Member'``, 'World'``)``; Write``(``'Third Member'``, False``)``; Write``(``'Fourth Member'``, True``)``; Write``(``'Other Member'``, 1.11``)``; EndObject``; EndObject``; Check``; finally Free``; end``;
- full JSON supported: literals, numbers, strings, arrays and objects
- date/time encoding and decoding supported
- customizable output
- available for Delphi XE4 - XE6
- source code included in full version
- royalty free distribution in applications
